/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Ingresos;

import Controladores.SeccionJpaController;
import Controladores.exceptions.IllegalOrphanException;
import Controladores.exceptions.NonexistentEntityException;
import Entidades.Seccion;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.persistence.EntityManagerFactory;
import Usuarios.conexion;
import java.util.List;
import javax.persistence.EntityManager;
import javax.persistence.Query;

/**
 *
 * @author Vicor Jose Betancohurt
 */
public class ISeccion 
{
 public ISeccion()
 {
 }
 //Ingreso de Seccion   Victor Jose Betanohucr
 public void guardar(String nombre)
 {
     EntityManagerFactory emf = conexion.getInstancia().getEMF();
     Seccion seccion = new Seccion();
     SeccionJpaController controlador = new SeccionJpaController(emf);
     seccion.setNombre(nombre);
     controlador.create(seccion);
 }
 //Modificacion de Seccion Victor Betancohurt
 public void modificar(Seccion seccion)
 {
     EntityManagerFactory emf = conexion.getInstancia().getEMF();
     SeccionJpaController controlador = new SeccionJpaController(emf);
     try {
         controlador.edit(seccion);
     } catch (IllegalOrphanException ex) {
         Logger.getLogger(ISeccion.class.getName()).log(Level.SEVERE, null, ex);
     } catch (NonexistentEntityException ex) {
         Logger.getLogger(ISeccion.class.getName()).log(Level.SEVERE, null, ex);
     } catch (Exception ex) {
         Logger.getLogger(ISeccion.class.getName()).log(Level.SEVERE, null, ex);
     }
 }
    //busqueda de seccion por id   Victor Betancohurt
     public Seccion buscarId(int id)
     {
         EntityManagerFactory emf = conexion.getInstancia().getEMF();
         SeccionJpaController controlador = new SeccionJpaController(emf);
         return controlador.findSeccion(id);
     }
     // busqued por nombre y devuelve una lista tipo Seccion
     public List<Seccion> buscarNombre(String nombre)
     {
        EntityManagerFactory emf = conexion.getInstancia().getEMF();
        EntityManager em = emf.createEntityManager();
        Query qr;
        qr = em.createNamedQuery("Seccion.findByNombre");
        qr.setParameter("nombre", nombre);
        List<Seccion> lista = qr.getResultList();
        return lista;
     }
     
     public List<Seccion> mostrarTodo()
     {
         EntityManagerFactory emf = conexion.getInstancia().getEMF();
         SeccionJpaController controlador = new SeccionJpaController(emf);
         return controlador.findSeccionEntities();
     }
     public String toString(int id)
     {
         Seccion seccion = this.buscarId(id);
         return seccion.toString();
     }
     public List<Seccion> mostrarTodoFalse()
    {
        EntityManagerFactory emf = conexion.getInstancia().getEMF();
        EntityManager em = emf.createEntityManager();
        Query qr;
        qr = em.createNamedQuery("Seccion.findByAnulado");
        qr.setParameter("anulado", false);
        List<Seccion> lista = qr.getResultList();
        return lista;
    }
     public List<Seccion> mostrarTodoTrue()
    {
        EntityManagerFactory emf = conexion.getInstancia().getEMF();
        EntityManager em = emf.createEntityManager();
        Query qr;
        qr = em.createNamedQuery("Seccion.findByAnulado");
        qr.setParameter("Anulado", true);
        List<Seccion> lista = qr.getResultList();
        return lista;
    }
}
